This invention relates to audio signal processing and, in particular, to a circuit that improves noise suppression and generation of comfort noise in telephones.
As used herein, “telephone” is a generic term for a communication device that utilizes, directly or indirectly, a dial tone from a licensed service provider. As such, “telephone” includes desk telephones (see FIG. 1), cordless telephones (see FIG. 2), speaker phones (see FIG. 3), hands free kits (see FIG. 4), and cellular telephones (see FIG. 5), among others. For the sake of simplicity, the invention is described in the context of telephones but has broader utility; e.g. communication devices that do not utilize a dial tone, such as radio frequency transceivers or intercoms.
There are many sources of noise in a telephone system. Some noise is acoustic in origin while the source of other noise is electronic, the telephone network, for example. As used herein, “noise” refers to any unwanted sound, whether or not the unwanted sound is periodic, purely random, or somewhere in-between. As such, noise includes background music, voices of people other than the desired speaker, tire noise, wind noise, and so on. Automobiles can be especially noisy environments.
As broadly defined, noise could include an echo of the speaker's voice. However, echo cancellation is separately treated in a telephone system and involves modeling the transfer characteristic of a signal path. Moreover, the model is changed or adapted over time as the characteristics, e.g. frequency response and delay or phase shift, of the path change.
While not universally followed, the prior art generally associates noise “suppression” with subtraction and noise “reduction” with attenuation or reduced gain. As used herein, noise suppression includes subtraction of one signal from another to decrease the amount of noise.
A state of the art adaptive echo canceling algorithm alone is not sufficient to cancel an echo completely. A modeling error introduced by the echo canceler will result in a residual echo after the echo cancellation process. This residual echo is annoying to a listener. Residual echo is a problem whether or not there is background noise. Even if the background noise level is greater than the residual echo, the residual echo is annoying because, as the residual echo comes and goes, it is more perceptible to the listener. In most cases, the spectral properties of the residual echo are different from the background noise, making it even more perceptible.
Various techniques, such as residual echo suppresser and non-linear processor, are employed to eliminate the residual echo. Even though a residual echo suppresser works well in a noise free environment, some additional signal processing is needed to make this technique work in a noisy environment. In a noisy environment, the non-linear processing of the residual echo suppresser produces what is known as noise pumping. When the residual echo is suppressed, the additive background noise is also suppressed, resulting in noise pumping. To reduce the annoying effects of noise pumping, comfort noise, matched to the background noise, is inserted when the echo suppresser is activated.
The above-identified applications disclose improved systems for reducing noise and adding comfort noise, a problem remains during long non-speech intervals, e.g. longer than 300 milliseconds. Noise suppression systems using a Bark band based, modified Weiner filter may not adequately reduce noise without introducing tonal artifacts during long non-speech intervals. Further, when a residual echo suppresser and noise suppresser are enabled in a complementary manner care should be taken during the comfort noise generation process because comfort noise is estimated before the noise suppression process and noise level will be different after the noise suppression. Thus, a robust method is needed to track changes, spectral and level, that are introduced by the noise suppression algorithm.
Comfort noise generators that utilize actual background noise take time to adjust spectral content, during which time the noise can become noticeably different from actual background noise during long non-speech intervals. Synthetic comfort noise is not matched to real background noise when noise reduction is enabled. It is difficult to adjust the gain of the comfort noise when the gain parameter in the noise suppression algorithm is changed.
Those of skill in the art recognize that, once an analog signal is converted to digital form, all subsequent operations can take place in one or more suitably programmed microprocessors. Use of the word “signal”, for example, does not necessarily mean either an analog signal or a digital signal. Data in memory, even a single bit, can be a signal. Similarly, “memory” relates to function, not form. It does not matter that the data is stored in a register in a microprocessor, in random access memory, in read only memory, or in any other kind of storage medium.
In view of the foregoing, it is therefore an object of the invention to increase noise suppression during long non-speech intervals.
Another object of the invention is to improve spectral matching of comfort noise to background noise.
A further object of the invention is to provide a comfort noise generator that substantially eliminates noise pumping.
Another object of the invention is to provide dynamic adjustments of the level of comfort noise that is dependent on noise reduction tuning parameters, thereby eliminating tuning in real time.